/**
 * 使用布尔值
 * @param defaultValue 默认值
 */
export function useBoolean(defaultValue?: boolean) {
    const value = ref<boolean>(defaultValue === true)

    /**
     * 设置布尔值
     * @param newValue 新值
     */
    function setValue(newValue: boolean) {
        value.value = newValue
    }

    /**
     * 切换
     */
    function toggle() {
        value.value = !value.value
    }

    /**
     * 设置为true
     */
    function setTrue() {
        setValue(true)
    }

    /**
     * 设置为false
     */
    function setFalse() {
        setValue(false)
    }

    return { value, toggle, setValue, setTrue, setFalse }
}
